package api

import (
	"StrayAnimals/internal/controller"
	"StrayAnimals/internal/middleware"
	"github.com/gin-gonic/gin"
)

// SetupRoutes 定义并注册所有路由
func SetupRoutes(router *gin.Engine) {
	// 公开路由
	router.GET("/email", controller.SendCaptcha)
	router.POST("/post/register", controller.Register)
	router.POST("/post/login", controller.Login)
	router.GET("/animal/getAnimalList", controller.GetAnimalList)

	// 受保护的路由组
	protected := router.Group("/post/update")
	protected.Use(middleware.JWTAuthMiddleware()) // 应用 JWT 验证中间件
	{
		// 受保护路由
		protected.POST("/email1", controller.UpdateEmail)
		protected.POST("/baseMsg", controller.UpdateBaseMsg)
		protected.POST("/password", controller.UpdatePassword)
	}

	// 受保护的路由组
	protected1 := router.Group("")
	protected1.Use(middleware.JWTAuthMiddleware())
	{
		protected1.POST("/upload", controller.UploadAvatar)
		protected1.GET("/user/getHistoryAvatar", controller.GetHistoryAvatar)
		protected1.POST("/animal/uploadAnimal", controller.UploadAnimal)
		protected1.GET("/animal/getAnimalById", controller.GetAnimalById)
		protected1.POST("/animal/adoptAnimal", controller.AdoptAnimal)
		protected1.GET("/animal/deleteAnimal", controller.DeleteAnimal)
		protected1.POST("/animal/updateAnimalMsg", controller.UpdateAnimalMsg)
	}
}

// 主页获取已发布的救助信息列表 分页 6条
// 详情接口
// 增删改查
// 用户isManager
// 获取个人发布列表
// 交易列表
// 领养者已领养动物列表 增删查
// 动物多张照片
